package com.xyz.dao.mapper;


import com.xyz.dao.pojo.PatrolPlanCalendarVo;
import com.xyz.dao.pojo.PlanCalendarVo;
import com.xyz.entity.pojo.EquipmentPlanTemplate;
import com.xyz.entity.pojo.PlanInfo;
import com.xyz.entity.pojo.TemplatePlanPart;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;
import java.util.Map;

@Repository("patrolPlanDaoMapper")
public interface PatrolPlanDaoMapper {

    List<PatrolPlanCalendarVo> selectPlanInfoByYear(@Param("treeIdList") List<Long> treeIdList, @Param("year") int yearInt);

    List<Map<String, Object>> selectPlanTemplateByDay(@Param("treeIdList") List<Long> treeIdList, @Param("treeName") String treeName, @Param("templateId") Long templateId, @Param("changeTime") Date time);

    List<Map<String, Object>> selectPlanTemplateByDate(@Param("treeIdList") List<Long> treeIdList, @Param("treeName") String treeName, @Param("templateId") Long templateId, @Param("startTime") Date startTime, @Param("endTime") Date endTime);

    List<Map<String, Object>> selectPlanTemplateByDayGroup(@Param("treeIdList") List<Long> treeIdList, @Param("changeTime") Date time);

    List<Map<String, Object>> selectPlanTemplateByDateGroup(@Param("treeIdList") List<Long> treeIdList, @Param("startTime") Date startTime, @Param("endTime") Date endTime);
}
